考点:异或盲注
payload
1 |
|
二分查找
1 | arr = [i for i in range(33,127)] |
上脚本
1 | import requests |
这个脚本特别慢,特别是最后猜测字典的时候,差不多有两百来位,可能要猜一天,只好研究一下怎么把二分查找运用到盲注脚本中来。
二分查找逻辑
二分查找是不断根据提交两个数的中间值后的反馈来不断更换查找边界来找到目标值,比如,我们需要在1-1000之间查找 666,提交中间值 500,发现小于目标数666,就会把最开始 start
的边界换成500,然后再继续提交中间数750,发现大于目标数666,就会把末尾的 end
换成 750 ,不断改变不断的改变边界变量,直到找到。
1 | import requests |
加上time.sleep(1) 是因为BUUCTF有限制,如果不加几分钟就跑出来了,用算法和不用算法对比起来,算法效率真高。